/**
 * @category 下载文件专用函数
 * @description 下载文件专用函数
 * @param data 文件地址或者文件流
 * @param name 生成的文件名
 * @param type 区分文件类型
 * @example downLoadFile(data,url,name)=>:void
 */
export default function downLoadFile(data: string, name = "文件", type = "url") {
  try {
    let url: string = type == "url" ? data : "";
    let blob;
    if (type == "blob") {
      blob = new Blob([data]);
      let urls = URL || webkitURL;
      url = urls.createObjectURL(blob);
    }
    //@ts-ignore 
    if (navigator.msSaveOrOpenBlob) {
      //ie edge 兼容
      //@ts-ignore 
      navigator.msSaveOrOpenBlob(blob, name);
      return;
    }
    const a = document.createElement("a"); // 创建a标签
    a.setAttribute("download", name); // download属性
    a.setAttribute("href", url); // href链接
    a.click(); // 自执行点击事件
  } catch (e) {
    console.log("下载失败");
  }
};